home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / language / f68k.zoo / changes.txt < prev    next >
Text File  |  1992-04-21  |  11KB  |  310 lines

  1. Bekannte Fehler:
  2. ================
  3.  
  4.  
  5. Änderungen:
  6. ===========
  7.  
  8. 12.7.90
  9. - Laderfunktionen EMIT, KEY und KEY? auf BIOS umgestellt
  10. - Laderfunktionen müssen Register d0-d7/a0-a5 retten.
  11. - EXIT geändert, funktionierte nicht
  12.  
  13. 22.7.90
  14. - Lader übergibt zusätzlich Zeiger auf Tabelle mit den
  15. Startblöcken der einzelnen Geräte für R/W. Auf diese Tabelle wird
  16. von F68K mit ROOTTABLE zugegriffen.
  17. - Wenn WARNING eingeschaltet wird, wird nicht mehr mit FIND,
  18. sondern mit VOCSEARCH nur noch das CURRENT-Vokabular durchsucht.
  19. - ?LEAVE aus dem Kernel entfernt
  20. - Lader stellt Floatstack nicht mehr zur Verfügung.
  21.  
  22. 6.8.90
  23. - DEFER im Kern geändert. Jetzt auch ROMfähig.
  24. - BLOCK defered, mit (BLOCK vorbesetzt
  25. - PAUSE eingeführt (defered), mit NOOP vorbesetzt
  26.  
  27. 3.9.90
  28. - LOAD defered, mit (LOAD vorbesetzt
  29. - (LOAD führt BLOCK nicht mehr aus, sondern setzt nur BLK
  30. - SOURCE führt nicht mehr BLOCK, sondern (BLOCK aus
  31.  
  32. 28.9.90
  33. - Aufrufe der Laderfunktionen sichern Register selbst. Laderfunktionen
  34. müssen Stack nicht mehr selbst korrigieren.
  35.  
  36. 16.10.90
  37. - USER-Variable CAPS eingeführt, die angibt, ob in NAME CAPITALIZE
  38. ausgeführt werden soll.
  39. - Fehler in BLOCK beseitigt. Wenn der Block nicht gelesen werden kann,
  40. ist der Stack sauber.
  41. - Wie LOAD und BLOCK ist jetzt auch BUFFER deferred und mit
  42. (BUFFER vorbesetzt.
  43. - Empfehlung aus Berlin, USER-Variablen über off(DT,us.l) zu adressieren
  44. wurde geprüft. Geht nicht, da off nur 8 Bit breit sein darf.
  45.  
  46.  
  47. 17.10.90
  48. - Fehlerhaftes 'C,' korrigiert. Hatte zuvor den DP um 2 erhöht.
  49.  
  50. 27.1.91
  51. - Kernel und Lader geändert. I/O-Funktionen übergeben Parameter jetzt
  52. auf dem Returnstack, um mit C besser konform zu sein.
  53.  
  54. 14.2.91
  55. - Fehlerhaftes FLIT korrigiert
  56.  
  57. 19.2.91
  58. - VALUE, LOCAL und TO in den Kern übernommen. (ANSI!)
  59.  
  60. 19.5.91
  61. - BEXTEND und BREDUCE korrigiert!
  62.  
  63. 19.5.91
  64. - OSEXPECT korrigiert. Jetzt kein Backspace über dn linken Rand mehr möglich.
  65. Abschließendes NULL-Byte ist verschwunden. Wenn EXPECT direkt mit <Return>
  66. beendet wird, bleibt der Puffer unberührt!
  67.  
  68. 19.5.91
  69. - R> und >R sind nicht mehr restrict.
  70.  
  71. 3.6.91
  72. - Vergeleiche(0=,<, etc.) beschleunigt
  73.  
  74. 4.6.91
  75. - Kontrollstrukturen den gängigen Gepflogenheiten angepaßt:
  76.  
  77. BEGIN ... AGAIN
  78. BEGIN ... WHILE ... REPEAT
  79. BEGIN ... WHILE ... WHILE ... (WHILE) ... REPEAT THEN (THEN)
  80. BEGIN ... WHILE ... AGAIN THEN
  81. BEGIN ... UNTIL
  82. BEGIN ... WHILE ... UNTIL THEN    (! von dpANS nicht vorgesehen !)
  83. BEGIN ... WHILE ... WHILE ... (WHILE) ... UNTIL  THEN THEN (THEN)
  84.  
  85. 4.6.91
  86. - C-Lader wegen fehlerhafter oder fehlender Bibliotheken jetzt in Turbo-C.
  87. Sozobon ist damit Mega-OUT.
  88.  
  89.  
  90. 12.6.91
  91. - WICHTIGE LADER-KERNEL-ÄNDERUNG:
  92. Der Lader übergibt nicht mehr alle Parameter einzeln, sondern faßt diese
  93. in einem Parameterfeld zusammen, das F68K dann übergeben wird.
  94. In diesem Parameterfeld ist Platz für einen kompletten Registersatz,
  95. der von F68K bei deer Initialisierung dort abgelegt wird. Damit hat
  96. der Lader vollständigen Zugriff auf seine eigene Laufzeitumgebung, wenn
  97. er beim I/O aufgerufen wird.
  98.  
  99. 12.6.91
  100. - READSYS un WRITESYS werden jetzt auch wie schon KEY, EMIT, etc. nicht
  101. mehr direkt, sondern in den Tabellen READSYSES und WRITESYSES übergeben.
  102.  
  103. 12.6.91
  104. - Die Adressen in den Tabellen KEYS, KEY?S, EMITS, R/WS, READSYSES und
  105. WRITESYSES werden bei der Initialisierung nicht mehr in relative
  106. F68K-Adressen umgesetzt, da sie ohnehin nicht direkt via EXECUTE ausgeführt
  107. werden dürfen, sondern immer etwas Interfacing durch KEY, KEY?, EMIT, R/W,
  108. READSYS und WRITESYS brauchen! Also:
  109.  
  110. (KEY) @ EXECUTE
  111.  
  112. ist verboten!!!!
  113.  
  114. 12.6.91
  115. - Aufgrund der obigen Änderung wurden (KEY) etc. in ^KEY etc. umbenannt.
  116.  
  117. 12.6.91
  118. - Es wird vom Assembler kein Standard-GEMDOS-Header mehr erzeugt.
  119. Stattdessen, erzeugt der Assembler den dokumentierten Header selbst. In den
  120. ersten zwei Byte, in der alten Doku als 'jump' bezeichnet, steht aber jetzt
  121. 'JP' (was das bloß heißen soll?), was vom Lader als Magic-Number geprüft
  122. werden kann. SAVE wurde dementsprechend bereits geändert.
  123.  
  124.  
  125. 12.6.91
  126. - VER eingeführt. VER liefert das datum der Kernelversion im amerikanischen
  127. Datumsformat Monat-Tag-Jahr in BCD-Darstellung. Wenn also der Kern z.B. vom
  128. 12.6.91 ist erhält man:
  129. HEX  VER .                    --> 61291
  130.  
  131.  
  132. 13.6.91
  133. - Lader kommt nun auch mit Diskettenwechseln im Laufwerk A: klar. Vorher
  134. aber CHANGEMEDIUM oder CM nicht vergessen!!
  135.  
  136.  
  137. 14.6.91
  138. - VER noch einmal geändert. Es liefert jetzt eine BCD-Zahl, die das Datum
  139. in der Reihenfolge Jahr-Monat-Tag enthält. Damit kann man mit > und < die
  140. Versionsdaten vergleichen (oder?).
  141. 14.6.91:        19910614
  142.  
  143.  
  144. 14.6.91
  145. - USE des FIFI durch ein viiiel einfacheres ersetzt. es existiert nun ein
  146. Stream USESTREAM, der von dem Blockstream, der durch USE ausgewählt wird,
  147. belegt wird. USE ist damit auch kein definierendes Wort mehr.
  148.  
  149.  
  150. 20.6.91
  151. - INTERPRET umgestellt. Es führt jetzt nach 'NAME NULLSTR? IF EXIT THEN'
  152. das DEFER-Wort PARSER in seiner Schleife aus. PARSER kann mit
  153. INTERPRETER oder COMPILER besetzt sein. '[' und ']' schalten den
  154. PARSER-Vektor um:
  155. : [     0 STATE !   ['] INTERPRETER IS PARSER ;
  156. : ]    -1 STATE !   ['] COMPILER    IS PARSER ;
  157.  
  158.  
  159. 26.6.91
  160. - LOCALs im Kern allozieren jetzt den Platz für den Zeiger auf die Daten
  161. im Datensegment. Dadurch entsteht zwar eine Indirektion beim Zugriff
  162. mehr, dafür ist das Codesegment aber wieder ROM-fähig
  163.  
  164. - Fehler in DIGIT? beseitigt. @@@@ ist jetzt nicht mehr &9999.
  165.  
  166.  
  167. 31.7.91
  168. - in CLEAR-BUFFER Löschen der Variablen LASTBLK hinzugefügt, die die
  169. Nummer des zuletzt benutzten Blocks enthält um (BLOCK z.B. für
  170. LOAD etwas zu beschleunigen.
  171.  
  172.  
  173. 10.8.91
  174. - DODEFER, die DEFER Laufzeitroutine, erneut geändert, da sie nicht
  175. funktionierte. Damit verbunden wurde auch ein 'R>->R'-Päärchen
  176. aus AFTER_LOAD: in RAW.SCR entfernt.
  177. - Wirkung von LASTBUF und LASTBLK in (BLOCK ausgeschaltet, da sie zu
  178. Inkonsistenzen führte.
  179. - AGAIN sichtbar gemacht. Der Header hatte gefehlt.
  180. - UNLOOP eingeführt:
  181.  ...  DO  ...  IF  UNLOOP EXIT THEN ... LOOP ...
  182.  
  183.  
  184. 11.8.91
  185. - CHAR und [CHAR] in den Kernel übernommen. Alle Quellen
  186. angepasst. ASCII taucht nicht mehr auf.
  187. - CELLS, CELL+, CHARS, CHAR+ in den Kernel aufgenommen.
  188. Einige '4+' in CELL+ gewandelt.
  189.  
  190.  
  191. 18.8.91
  192. - DEVICE1.SCR verkleinert und in DEV.SCR umbenannt, damit es besser
  193. auf eine Standarddiskette passt.
  194. - (KEY), (EMIT), (KEY?), (R/W), (READSYS) und (WRITESYS) wieder
  195. eingeführt, um Vektorisierund aud High Level zu ermöglichen.
  196. Die Vektoren sind mit LOADERKEY, LOADEREMIT ... usw. vorbesetzt.
  197. Diese wiederrum werten die Vektoren ^KEY, ^EMIT ... usw. aus.
  198. In diesen Uservariablen können die Funktionsadressen aus den
  199. Tabellen KEYS, EMITS ... usw. stehen. Damit hat man eine
  200. zweistufige Vektorisierung.
  201. - kleine Schönheitkorrekturen am Lader.
  202.  
  203.  
  204. 21.8.91
  205. - >R und R> sind aufgrund der neuen Interpreterstruktur wieder
  206. restrict.
  207.  
  208. ??.??.??
  209. - Fehler im Blockstreamsystem beseitigt. Filenamen werden vor ihrer
  210. Bearbeitung nach HERE kopiert, da kompilierte Filenamen zu
  211. ROO-Code (Run Once Only) geführt haben.
  212.  
  213.  
  214. 19.9.91
  215. - PUSH, SAVEAREA und EVALUATE dem Kernel zugefügt.
  216.  
  217.  
  218. 21.9.91
  219. - Fehler in BUSE korrigiert. Bei 'nicht gefunden' wurde ein Wert
  220. zu wenig abgeräumt: NIP  --->  NIP NIP
  221. - Schönheitskorrekturen  4 <--> CELL
  222. - PUSH aus Highlevel-Quellen auskommentiert.
  223. - kleine Fehler in ANS-LOCALS und ANS-LOCALS_(TO) korrigiert, die
  224. durch Übernahme von LOCAL in den Kernel entstanden sind.
  225. - Optimierungen im Kernel:
  226.         bsr     -->     bsr.s
  227.         jsr     -->     bsr(.s)
  228. - FENCE keine USER-Variable mehr.
  229. - Fehler in PWD korrigiert. Es blieb ein Wert (directory @) auf
  230. dem Stack liegen.
  231.  
  232. 23.9.91
  233. - Fehler in DIR beseitigt. Wenn Zeilverzeichnis nicht gefunden wurde,
  234. blieb ein Wert auf dem Stack liegen.
  235. - SAVE korrigiert. Flags von WRITESYS wurden nicht entfernt.
  236. - SAVE in SAVE-SYSTEM umbenannt.
  237. - BRANCH und ?BRANCH zwecks gesteigerter Kompatibilität zu anderen
  238. Systemen (bigForth, ForthMacs) jetzt IMMEDIATE. Dadurch Änderungen in
  239. CASE und UCS (POSTPONE).
  240.  
  241.  
  242.  
  243. 4.10.91
  244. - Disassembler von Reinhard Scharnagl provisori